package javase2.day07.demo06;
/*
需求：
    1.定义一个接口Calculator，内含抽象方法cal返回int
    2.使用Lambda调用invokeCal方法计算两数之和并打印，参数列表int a,int b,Calculator无返回值
 */
public class DemoCalculator {
    public static void main(String[] args) {
        //匿名内部类
        invokeCal(10, 20, new Calculator() {
            @Override
            public int cal(int a, int b) {
                return a+b;
            }
        });

        //Lambda表达式调用invokeCal
        invokeCal(100,200,(int a,int b)->{
            return a+b;
        });

        //Lambda表达式省略
        invokeCal(1000,2000,(a,b)->a+b);

        /*
30
300
3000
         */
    }

    public static void invokeCal(int a,int b,Calculator c){
        int num = c.cal(a,b);
        System.out.println(num);
    }
}
